classdef AOM < MeasurementComponent.Actuator.AbstractActuator
    %AOM 
    
    properties
        vfController
    end
    
    methods
        function obj = AOM(name,varargin)
            %AOM 
            obj@MeasurementComponent.Actuator.AbstractActuator(name, 'AOM', varargin{:});
        end
        
        function obj = setVfController(obj, port)
            obj.vfController = port;
        end
        
        function obj = setVf(obj, vf)
            L = log4m.getLogger();
            if nargin == 1
                vf = obj.setting.voltFreq;
            end
            obj.vfController.setDC(vf);
            L.info('MeasurementComponent.Actuator.AbstractActuator::setVf', sprintf('AOM Frequency Control Voltage Vf is set to [%5.3f V]', vf));
        end
        
        function obj = shutdown(obj)
            obj.setVf(0.0);
            obj.setDC(0.0);
        end
    end
end

